#define _CRT_SECURE_NO_WARNINGS
#include "12.29_hs.h"
//int main()
//{
//	srand((unsigned int)time(NULL));
//	for (int n = 0; n < 7; n++)
//	{
//		printf("%d\n", 1+rand()%10);
//	}
//	return 0;
//}

//int main()
//{
//	int n = 10 << 2;
//	int m = -7 >> 2;
//	printf("%d %d\n", n, m);
//	printf("%d %d\n", 5 & 3, -5 & 3);
//	printf("%d %d\n", -5 | 3, 5 | 3);
//	printf("%d %d\n", -5 ^ 3, 5 ^ 3);
//	printf("%d %d\n", ~- 5, ~3);
//	printf("%d %d\n", 077 << 2, -077 >> 2);
//	printf("%d %d\n", 0x77 << 2, -0x77 >> 2);
//	return 0;
//}

//int main()
//{
//	int n = 7;
//	int m = 1;
//	/*m = n + m;
//	n = m - n;
//	m = m - n;*/
//	m = n ^ m;
//	n = m ^ n;
//	m = m ^ n;
//	printf("%d %d", n, m);
//	//printf("%d %d %d", 7 ^ 0, 1 ^ 1, 7 ^ 1 ^ 1);
//	return 0;
//}

int main()
{
	int n = -1, count = 0;
	/*while (n)err
	{
		if (n % 2 == 1)
		{
			count++;
		}
		n /= 2;
	}*/
	/*for (int i = 0; i < 32; i++)ok
	{
		if ((n >> i) & 1 == 1)
		{
			count++;
		}
	}*/
	while (n)
	{
		n = n & (n - 1);
		count++;
	}
	printf("%d", count);
	return 0;
}